package com.sinba.common.user.service;

import java.util.List;

import com.sinba.common.system.dto.RuleDTO;
import com.sinba.common.user.dto.DaiShuJiangDTO;
import com.sinba.common.user.dto.FuWuJiangDTO;
import com.sinba.common.user.entity.RegisterUser;

/**
 * 奖金
 * @author ADMIN
 *
 */
public interface IBonusService {

	/**
	 * 日分红
	 * @return 分红结果
	 */
	String everyDayHong(int page , int rows);
	
	String everyDayHong1();
	/**
	 * 对碰奖
	 * @param ruleDTO 制度
	 * @param point 对碰点
	 * @param regUser 产生对碰会员
	 * @param acUser 激活会员
	 */
	void dpAward(RuleDTO ruleDTO , Long point , RegisterUser regUser,RegisterUser acUser);
	
	/**
	 * 代数奖
	 * @param acLoginName 激活会员
	 * @param recommendUser 推荐会员
	 * @param dq
	 */
	void algebraicAward(RuleDTO ruleDTO , RegisterUser activeUser,RegisterUser recommendUser,int dq,Double fuWuJiang,String fuwudezhu,List<DaiShuJiangDTO> dsjDtos);
	
	void algebraicAward(RuleDTO ruleDTO , RegisterUser activeUser);
	
	/**
	 * 领导奖
	 * @param ruleDTO 制度
	 * @param dpAward 对碰奖
	 * @param activeUser 激活会员
	 * @param recommendUser 推荐会员
	 */
	void leaderAward(RuleDTO ruleDTO ,Double dpAward , RegisterUser activeUser,RegisterUser recommendUser);
	
	
	/**
	 * 服务奖
	 * @param ruleDTO
	 * @param activeUser
	 * @param contactUser
	 */
	void fuWuAward(RuleDTO ruleDTO , RegisterUser activeUser,RegisterUser contactUser,int cheng, List<FuWuJiangDTO> fwjDtos);
	
	
	
	/**
	 * 直推奖
	 * @param loginName 注册人账号
	 * @param ruleDTO 制度
	 */
	void directPush(String loginName,RuleDTO ruleDTO);
	
	
	void algebraicAward(RuleDTO ruleDTO,RegisterUser activeUser,RegisterUser recommendUser,Long money,int dq);
}


